package com.cxd.ancun.service;

import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Service;

import com.cxd.base.util.BeanTools;
/**
 * <一句话功能简述> <功能详细描述>
 * @author wtj
 * @date 2016年4月11日 下午2:56:53
 * @company CXD
 * @version [Copyright (c) 2016 V001]
 */
@Service("dictService")
public class DictService {
	
	private static final Logger logger = Logger.getLogger(DictService.class);
	@Resource
	public BeanTools db;
	
	/**
	 * 通过数据字典的 父编码和子编码获取对应的名称
	 * @param parentKey
	 * @param key
	 * @return
	 */
	public String getValue(String parentKey ,String key){
		if (StringUtils.isEmpty(key)) {
			return null;
		}
		if(parentKey == null){
			parentKey = "COMMON";
		}
		List<Map<String,Object>> liMap = db.queryListMap(String.format("select di.VALUE from dict di inner join dict di1 on di.p_id = di1.id where di1.key = '%s' and di.key= '%s'",parentKey,key));
		if(liMap.size() > 1){
			logger.error("有多个相同的key存在数据库中");
			return "ERROR[多个相同的KEY]";
		}else if(liMap.size() < 1){
			return parentKey +"."+key + " not found";
		}else{
			return liMap.get(0).get("VALUE").toString();
		}
	}
}
